<!doctype html>
<html>
  <head>
    <meta charset="utf-8"/>
    <title>Randoop publications</title>

    <link rel="stylesheet" href="stylesheets/styles.css">
    <link rel="icon" type="image/png" href="images/randoop-logo.png" />
    <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no"/>
  </head>
  <body>

      <header>
        <img src="images/randoop-logo.png" alt="Randoop logo" style="float:right" />

        <h1>Publications</h1>
        <p>Scientific papers about and using Randoop</p>
      </header>
     <section>

<h3>
<a id="randoop-publications" class="anchor" href="#randoop-publications" aria-hidden="true"><span class="octicon octicon-link"></span></a>Randoop Publications</h3>

<p>These papers describe Randoop and its underlying techniques in more detail.</p>

<p><a href="http://homes.cs.washington.edu/~mernst/pubs/classify-tests-ecoop2005-abstract.html">Eclat: Automatic generation and classification of test inputs</a>
by Carlos Pacheco and Michael D. Ernst. In <em>ECOOP 2005 -- Object-Oriented Programming, 19th European Conference</em>, (Glasgow, Scotland), 2005.
Paper: <a href="http://homes.cs.washington.edu/~mernst/pubs/classify-tests-ecoop2005.pdf">PDF</a></p>

<ul>
<li>The first paper to present the feedback-directed random test generation, which generates each test, evaluates it, and determines whether to use it as a foundation for more tests.  Randoop uses this technique.</li>
</ul>

<p><a href="http://homes.cs.washington.edu/%7Emernst/pubs/feedback-testgen-icse2007-abstract.html">Feedback-directed random test generation</a>
by Carlos Pacheco, Shuvendu K. Lahiri, Michael D. Ernst, and Thomas Ball. In <em>ICSE '07: Proceedings of the 29th International Conference on Software Engineering</em>, (Minneapolis, MN, USA), 2007.
Paper: <a href="http://homes.cs.washington.edu/%7Emernst/pubs/feedback-testgen-icse2007.pdf">PDF</a>
Slides: <a href="http://homes.cs.washington.edu/%7Emernst/pubs/feedback-testgen-icse2007-slides.pdf">PDF</a> <a href="http://homes.cs.washington.edu/%7Emernst/pubs/feedback-testgen-icse2007-slides.ppt">PPT</a></p>

<ul>
<li>The main paper describing feedback-directed random test generation and Randoop, as well as experiments that compare the technique with other test generation techniques.</li>
</ul>

<p><a href="http://people.csail.mit.edu/cpacheco/publications/randoop_for_java-abstract.html">Randoop: Feedback-directed Random Testing for Java</a> by Carlos Pacheco and Michael D. Ernst. In <em>OOPSLA 2007 Companion</em>, Montreal, Canada, Oct. 2007, ACM.</p>

<ul>
<li>A short tool paper describing aspects of the Java version of Randoop.</li>
</ul>

<p><a href="http://people.csail.mit.edu/cpacheco/publications/randoop-case-study-abstract.html">Finding Errors in .NET with Feedback-directed Random Testing</a> by Carlos Pacheco, Shuvendu K. Lahiri, and Thomas Ball. In <em>ISSTA 2008</em>, Seattle, Washington, 2008.
Slides: <a href="files/randoop_case_study_2008.pdf">PDF</a> <a href="files/randoop_case_study_2008.ppt">PPT</a></p>

<ul>
<li>This case study details the use of Randoop at Microsoft (using a <a href="#net-version-of-randoop">.NET version of Randoop</a>). A team of test engineers applied Randoop to a critical .NET component that had been thoroughly tested for years. Still, Randoop found many serious errors.</li>
</ul>

<p>Directed Random Testing (dissertation).
Slides: <a href="files/thesis_talk_post.pdf">PDF</a></p>

<h3>
<a id="other-publications-that-use-or-evaluate-randoop" class="anchor" href="#other-publications-that-use-or-evaluate-randoop" aria-hidden="true"><span class="octicon octicon-link"></span></a>Other publications that use or evaluate Randoop</h3>

<p>Note: this list is seriously outdated!  For a more recent collection of publications take a look at <a href="http://scholar.google.com/scholar?hl=en&amp;q=pacheco+lahiri+ball+ernst&amp;btnG=Search&amp;as_sdt=0%2C5&amp;as_ylo=&amp;as_vis=0">this Google Scholar search</a>.
There are 393 results as of 2015-05-10.</p>

<p>The following papers (by other authors) use or evaluate Randoop.</p>

<ul>
<li>Predicting Effectiveness of Automatic Testing Tools by Brett Daniel and Marat Boshernitsan. In ASE 2008.</li>
<li>Predicting and Explaining Automatic Testing Tool Effectiveness by Brett Daniel and Marat Boshernitsan. UIUC Tech Report UIUCDCS-R-2008-2956.</li>
<li>Improving Structural Testing of Object-Oriented Programs via Integrating Evolutionary Testing and Symbolic Execution by Kobi Inkumsah and Tao Xie. In ASE 2008.</li>
<li>Making Program Refactoring Safer, by Gustavo Soares, Rohit Gheyi, Dalton Serey, and Tiago Massoni. In IEEE Software, July/August 2010.</li>
</ul>

<h3>
<a id="courses-that-use-randoop" class="anchor" href="#courses-that-use-randoop" aria-hidden="true"><span class="octicon octicon-link"></span></a>Courses that use Randoop</h3>

<p>Note: this list is seriously outdated!
If you wish to have your course listed here, let us know.</p>

<ul>
<li>Software Testing (Spring 2008) at Universidade Federal de Pernambuco, taught by Marcelo d'Amorim.</li>
<li>Reliable Software: Testing and Monitoring (Third term 2008), Caltech, taught by Alex Groce.</li>
<li>UIUC Topics in Software Engineering (Randoop was used in this course in multiple years).</li>
<li>Automatic Program Checking, Karlsruhe Institute of Technology (2010).</li>
<li>RIO 2011 C5: Automated Test Generation and Repair.</li>
<li>Automatic Program Checking, Karlsruhe Institute of Technology (2010, 2011)</li>
</ul>

<h3>
<a id="net-version-of-randoop" class="anchor" href="#net-version-of-randoop" aria-hidden="true"><span class="octicon octicon-link"></span></a>.NET version of Randoop</h3>

<p>A version of Randoop that works with Microsoft's .NET platform is available at <a href="https://github.com/abb-iss/Randoop.NET">https://github.com/abb-iss/Randoop.NET</a>.  Randoop.NET is a from-scratch re-implementation of feedback-directed test generation.
<!-- (who also came up with the "Randoop" name; the previous Java toolwas known as "Joe")
  -->
The link above is to <a href="https://github.com/abb-iss/Randoop.NET">ABB Corporation's updated version of Randoop.NET</a>.  Compared to <a href="https://archive.codeplex.com/?p=randoop">the original version of Randoop.NET from Microsoft Research</a>:
</p>
<ul>
  <li>It fixes some bugs.</li>
  <li>It adds new features, notably regression assertions for more effective regression testing, method transformers to delete or replace calls to specific methods in the assembly, and richer debug information collection.</li>
  <li>It adds a GUI, as a VS2010 add-in.</li>
</ul>
      </section>

  </body>
</html>

<!--  LocalWords:  Eclat Shuvendu Lahiri PPT Boshernitsan UIUC UIUCDCS Kobi Inkumsah Xie Soares Rohit Gheyi Serey Tiago Massoni Pernambuco d'Amorim Groce Karlsruhe C5 ABB VS2010 Universidade de
 -->
